
class MyThread extends Thread {
    @Override
    public void run() { // run是一个特殊的方法，是一个重写了父类的方法
        // 在创建另一个进程的时会被自动执行到
        while (true) {
            System.out.println("hello t");
            try {
                Thread.sleep(1000);
            } catch (InterruptedException e) { //可能异常：中断：中断睡眠
                e.printStackTrace();
            }
        }

    }//如果在子类中写一个别的方法，就不会被自动执行了，只是一个普通的方法
}
public class ThreadDemo1 {
    public static void main(String[] args) {

        Thread t = new MyThread();   //先创建一个MyThread实例
        t.start();  // 启动线程 调用操作系统的api，创建新线程，新的线程里调用t.run
        /*这相当于创建两个线程，一个是创建进程之后就有的一个进程main，
        然后又创建了一个新的线程t，所以打印的时候是交替执行的，但是是并行的
        还是并发的，我们感知不到，都有可能，*/
        while (true) {
            System.out.println("hello Main");
            try {
                Thread.sleep(1000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    }
}
